Location system and method for client terminals which provide location-base service to mobile terminals

ABSTRACT

In one of multiple mobile communication networks, a serving node responsible for locating mobile terminals is responsive to a registration request from a mobile terminal for storing the serving node identity in a home location database to which the mobile terminal is subscribed. In response to a location request message from a client terminal requesting the location of a target mobile terminal, a serving node identity is retrieved from the home location database of the target mobile terminal. The serving node identity represents the current location of the target mobile terminal. If the current location area is within the coverage area of location-based service provided by the client terminal, the location request message is forwarded to a serving node identified by the retrieved serving node identity. Otherwise, an error message is transmitted to the client terminal to indicate that the target mobile terminal is roaming outside of the coverage area.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to location systems, and morespecifically to a location system for a LCS (LoCation Service) clientterminal which provides location-based service to a target mobileterminal when the client terminal knows the location of the mobileterminal.

2. Description of the Related Art

In the location system standardized by 3GPP (3rd Generation PartnershipProject) TS (Technical Specification Group Services and System Aspects)23.271 V5.3.0 and 25.305 V5.4.0, LCS clients provide a location-basedservice to a mobile terminal by using ASP (application service provider)software, only if the mobile terminal is located within the coveragearea of the service. Examples of such location-based service aredescribed in 3GPP TS 22.071 V5.1.1 (2002-3). If the location of themobile terminal is outside of the service coverage area, the LCS clientterminal is not required to provide its service to that mobile terminal.However, the client terminal has no way of knowing the location of themobile terminal, it transmits a location request message to the locationsystem to determine if the mobile terminal is located within thecoverage area of its service before initiating a location-based serviceto the target mobile terminal. In the location system, the locationrequest message from the client terminal is received and processedthrough a gateway, or GMLC (Gateway Mobile Location Center) and aserving node, or MSC/SGSN (Mobile Switching Center/Serving GPRS SupportNode) collaborates with the associated wireless network to perform alocation measurement on the target mobile terminal to produce a locationestimate and returns a location report message. The location reportmessage is transmitted back to the client terminal through the gateway.Therefore, if a target mobile terminal is roaming outside of the servicecoverage area of a client terminal, the client terminal decides that nolocation-based service is necessary on receiving a location report fromthe associated gateway. As a result, the mobile communication networksconsume their resource for useless location request/report traffic whena target mobile terminal is roaming outside of the coverage oflocation-based service provided by a client terminal. In particular,when the target mobile terminal has moved from its subscribed homenetwork to a foreign network operated by a different network operator, asubstantial amount of resources is used in these networks for uselesstraffic.

It is known that when a client terminal specifies a QoS(quality-of-service) parameter, the associated gateway uses thespecified parameter as a threshold for making a decision as to whether alocation request message is to be forwarded to the serving node of atarget mobile terminal. If the specified QoS parameter is satisfied, thegateway forwards the message to the serving node of the target mobileterminal. Otherwise, an error message is returned to the clientterminal. However, the known location system returns no error message tothe client terminal when the target mobile terminal is roaming outsideof the coverage area of the location-based service provided by theclient terminal.

SUMMARY OF THE INVENTION

It is therefore an object of the present invention to provide a locationsystem and method whereby a mobile communication network is saved fromconsuming its resource for useless location request/report traffic whena target mobile terminal is roaming outside of the coverage oflocation-based service provided by a client terminal.

According to a first aspect of the present invention, there is provideda location system for a client terminal which provides a location-basedservice over a coverage area, comprising at least one mobilecommunication network for determining an area in which a mobile terminalis located in response to an area request message and determininglocation of the mobile terminal in response to a location requestmessage, first means which is responsive to a location request messagefrom the client terminal requesting location information of a targetmobile terminal for transmitting the area request message to the networkto determine the area in which the target mobile terminal is located,and second means for forwarding the location request message to thelocation network to determine the location of the target mobile terminalif the determined area is within the coverage area and transmitting anerror message to the client terminal if the determined area is outsideof the coverage area. When the client terminal receives the errormessage, it abandons its location-based service, recognizing that thetarget mobile terminal is roaming outside of the service coverage area.The network is thus saved from generating useless traffic when mobileterminals are roaming outside of the coverage area of clients'location-base services.

Specifically, the at least one mobile communication network comprises ahome location database to which the target mobile terminal issubscribed, and a serving node which is responsive to a registrationrequest message from the target mobile terminal for storing identity ofthe serving node in the home location database of the target mobileterminal. The serving node is responsible for producing locationinformation of the target mobile terminal. The serving node identityrepresents the area in which the target mobile terminal is located. Thefirst means retrieves a serving node identity from the home locationdatabase corresponding to the target mobile terminal in response to alocation request message from the client terminal. The second meansforwards the location request message to a serving node identified bythe retrieved serving node identity if the area represented by theserving node identity is within the coverage area and transmits an errormessage to the client terminal if the area represented by the servingnode identity is outside of the coverage area.

According to a second aspect of the present invention, there is provideda gateway for serving a client terminal which provides a location-basedservice to mobile terminals over a coverage area through at least onemobile communication network which determines an area in which a mobileterminal is located in response to an area request message anddetermines location of the mobile terminal in response to a locationrequest message, comprising first means which is responsive to alocation request message from the client terminal requesting locationinformation of a target mobile terminal, for transmitting the arearequest message to the at least one network to determine the area inwhich the target mobile terminal is located, and second means forforwarding the location request message to the at least one network todetermine the location of the target mobile terminal if the determinedarea of the target mobile terminal is within the coverage area andtransmitting an error message to the client terminal if the determinedarea of the target mobile terminal is outside of the coverage area.

According to a third aspect, the present invention provides a method oflocating a mobile terminal when a location request message is receivedfrom a client terminal which provides location-based service to themobile terminal when the mobile terminal is located within the coveragearea of the service. The locating method comprises the steps of (a)determining an area in which a target mobile terminal is located when alocation request message is received from the client terminal, and (b)determining location of the target mobile terminal if the determinedarea of the mobile terminal is within the coverage area and transmittingan error message to the client terminal if the determined area of thetarget mobile terminal is outside of the coverage area.

More specifically, the mobile terminal is connected to one of aplurality of mobile communication networks. Each of the networkscomprises a home location database to which the mobile terminal issubscribed and a serving node for serving the mobile terminal. The step(a) comprises retrieving a serving node identity from a home locationdatabase corresponding to the target mobile terminal, and step (b)comprises forwarding the location request message to a serving nodeidentified by the retrieved serving node identity if an area representedby the serving node identity is within the coverage area, andtransmitting the error message to the client terminal if the area isoutside of the coverage area.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will be described in detail further with referenceto the following drawings, in which:

FIG. 1 is a block diagram of a location system according to one networkconfiguration of the present invention in which mobile communicationnetworks are owned and operated by respective network operators;

FIG. 2 is a block diagram of a location system according to a firstembodiment of the present invention based on the network configurationof FIG. 1, in which the home GMLC is responsible for making an in/outarea decision;

FIG. 3 shows the data structure of a location request messagetransmitted from the client terminal of FIG. 2;

FIG. 4 is a flowchart of the operation of the home GMLC of FIG. 2;

FIG. 5 is a sequence diagram for describing the operation of thelocation system of FIG. 2;

FIG. 6 is a block diagram of a location system according to a secondembodiment of the present invention based on the network configurationof FIG. 1, in which the requesting GMLC is responsible for making anin/out area decision;

FIG. 7 is a sequence diagram for describing the operation of thelocation system of FIG. 6;

FIG. 8 is a block diagram of a location system according to a thirdembodiment of the present invention based on the network configurationof FIG. 1, in which the visited GMLC is responsible for making an in/outarea decision;

FIG. 9 shows the data structure of a location request messagetransmitted from the requesting GMLC of FIG. 8;

FIG. 10 is a sequence diagram for describing the operation of thelocation system of FIG. 8;

FIG. 11 is a block diagram of a location system according to a fourthembodiment of the present invention based on the network configurationof FIG. 1, in which the coverage area information and location areainformation of the decision-making home GMLC are constantly updated bydata supplied from the client terminal and the visited GMLC;

FIG. 12 is a sequence diagram for describing the operation of thelocation system of FIG. 11;

FIG. 13 is a block diagram of a location system according to anothernetwork configuration of the present invention in which two (requestingand home) mobile communication networks are owned and operated by acommon network operator and a third (visited) mobile communicationnetwork is owned and operated by another network operator;

FIG. 14 is a block diagram of a location system according to a fifthembodiment of the present invention based on the network configurationof FIG. 13, in which a single GMLC operates as a requesting and homegateway as well as a decision-making gateway;

FIG. 15 is a sequence diagram for describing the operation of thelocation system of FIG. 14;

FIG. 16 is a block diagram of a location system according to a thirdnetwork configuration of the present invention in which two (home andvisited) mobile communication networks are owned and operated by acommon network operator and a third (requesting) mobile communicationnetwork is owned and operated by another network operator;

FIG. 17 is a block diagram of a location system according to a fifthembodiment of the present invention based on the network configurationof FIG. 16, in which a single GMLC operates as a home and visitedgateway as well as a decision-making gateway;

FIG. 18 is a sequence diagram for describing the operation of thelocation system of FIG. 17;

FIG. 19 is a block diagram of a location system according to a sixthembodiment of the present invention based on the network configurationof FIG. 16, in which one GMLC operates as a home and visited gateway andanother GMLC operates as a requesting gateway as well as adecision-making gateway;

FIG. 20 is a sequence diagram for describing the operation of thelocation system of FIG. 19;

FIG. 21 is a block diagram of a location system according to a fourthnetwork configuration of the present invention in which all (requesting,home and visited) mobile communication networks are owned and operatedby a common network operator;

FIG. 22 is a block diagram of a location system according to a seventhembodiment of the present invention based on the network configurationof FIG. 21, in which one GMLC operates as a requesting, home and visitedgateway as well as a decision-making gateway;

FIG. 23 is a sequence diagram for describing the operation of thelocation system of FIG. 22;

FIG. 24 is a block diagram of a location system according to an eighthembodiment of the present invention, as a modification of the thirdembodiment (FIG. 8), based on the network configuration of FIG. 13;

FIG. 25 is a sequence diagram for describing the operation of thelocation system of FIG. 24;

FIG. 26 is a block diagram of a location system according to a ninthembodiment of the present invention, as a modification of the thirdembodiment (FIG. 8), based on the network configuration of FIG. 16;

FIG. 27 is a sequence diagram for describing the operation of thelocation system of FIG. 26;

FIG. 28 is a block diagram of a location system according to a tenthembodiment of the present invention, as a modification of the secondembodiment (FIG. 6), based on the network configuration of FIG. 1;

FIG. 29 is a sequence diagram for describing the operation of thelocation system of FIG. 28;

FIG. 30 is a block diagram of a location system according to an eleventhembodiment of the present invention, as a modification of the firstembodiment (FIG. 2), based on the network configuration of FIG. 1;

FIG. 31 is a sequence diagram for describing the operation of thelocation system of FIG. 30;

FIG. 32 is a block diagram of a location system according to athirteenth embodiment of the present invention, as a furthermodification of the first embodiment (FIG. 2), based on the networkconfiguration of FIG. 1;

FIG. 33 is a sequence diagram for describing the operation of thelocation system of FIG. 32;

FIG. 34 is a block diagram of a location system according to afourteenth embodiment of the present invention, as a still furthermodification of the first embodiment (FIG. 2), based on the networkconfiguration of FIG. 1, in which one of the requesting and homegateways is selectively responsible for making the in/out area decisiondepending on whether the requesting gateway maintains the identity ofthe home gateway;

FIGS. 35A and 35B are sequence diagrams for describing the operation ofthe location system of FIG. 34;

FIG. 36 is a block diagram of a location system according to a fifteenthembodiment of the present invention as a modification of the fourteenthembodiment (FIG. 34);

FIG. 37 shows the data structures of a location request messagetransmitted from the client terminal to the requesting gateway and alocation request message forwarded from the requesting gateway to a homegateway;

FIGS. 38A and 38B are flowcharts of the operation of the requesting andhome gateways of FIG. 36; and

FIGS. 39A and 39B are sequence diagrams of the location system of FIG.36.

DETAILED DESCRIPTION

Referring now to FIG. 1, there is shown a location system of a mobilemulti-network in which the present invention is incorporated. Thelocation system is comprised of a plurality of mobile communicationnetworks A, B and C operated by respective network operators. Eachmobile communication network “i” (where i=A, B or C) comprises a GMLC(Gateway Mobile Location Centers) 2 i to which an LCS (LoCation System)client terminal 1 i is connected via a wireline switched communicationsnetwork such as PSTN, not shown. GMLC 2 i is connected to an associatedMSC/SGSN (Mobile service Switching Center/Serving General packet radioservice Support Node) 3 i. Each GMLC, or gateway is further connected tothe other GMLCs. MSC/SGSN i3 is connected to a RAN (Radio AccessNetwork) 4 i. A plurality of databases, or HLR/HSSs (Home LocationRegister/Home Subscriber Server) 5A, 5B and 5C are connected to theGMLCs 2A, 2B, 2C. Each of the HLR/HSSs is further connected to the otherGMLCs.

Note that, upon receipt of a location request message, each gatewayperforms a privacy check to verify the authenticity of the message. If amessage is verified by a gateway, the message is processed by thegateway or simply forwarded to the next gateway depending on thecontents of the message. If a message is not verified, an error messageis returned to the client terminal.

Each UE mobile terminal has its own subscribed home database in whichthe location of the mobile terminal is registered wherever the mobileterminal is located. When the mobile terminal is moves out its homenetwork area and enters another network area, the serving node(MSC/SGSN) of the network registers its location and notifies the homedatabase of the visiting mobile terminal of the identity of the servingnode. Thus, the home location database of a subscribed mobile terminalcan be identified by any serving node as well as by any gateway if theidentity of the mobile terminal is known.

Although illustrated as comprising only one set of network nodes (GMLC,HLR/HSS, MSC/SGSN and RAN), each of the networks A, B and C may becomprised of a number of such sets of network nodes. Further, each GMLCmay be associated with more than one MSC/SGSNs of the same network.

Mobile terminals, called UE (user equipment) terminals are wirelesslyassociated with the networks A, B and C. For simplicity, only one UEterminal B6 is illustrated as a subscriber of the network B. When UEterminal 6B is establishing a wireless link to its home RAN 4B, theMSC/SGSN 3B is the serving node of the UE terminal B6. GMLCs 2A, 2B, 2Coperate in different modes. Each GMLC operates as a requesting GMLC(designated R-GMLC) when it receives a location request from a clientterminal and returns a location report to the client terminal, andoperates as a home GMLC (designated H-GMLC) when it receives a locationrequest from a R-GMLC and returns a location report to the R-GMLC. EachGMLC further operates as a visited GMLC (designated V-GMLC) when it isvisited by a UE terminal whose subscription is other than the mobilecommunication network of the GMLC.

Each MSC/SGSN is responsible for the management of mobile terminalswhich are currently establishing a wireless connection with the RAN ofthe same mobile communication network. Therefore, when the UE terminalB6 is roaming to the network C and establishing a wireless link with theRAN C4, as shown in FIG. 1, the MSC/SGSN 3C operates as a serving nodeas well as a V-MSC/SGSN and the GMLC 2C operates as a V-GMLC.

The client terminal provides a location-based service to subscribed UEterminals. Prior to the transmission of a location-based service signalto a UE terminal, the client terminal must determine the currentlocation of the UE terminal by requesting it from the location system.In this process, one or more network elements of the location system areresponsible for making a decision as to whether the location area of theUE terminal is within or out of the coverage area of the location-basedservice of the client terminal.

Since the identity of a UE terminal is mapped beforehand to the identityof its HLR/HSS in all gateways of the location system and the locationof the UE terminal is always updated whenever it moves out of theserving area of its home network, the requesting gateway is aware of theidentity of the HLR/HSS of a target UE terminal when it receives alocation request message requesting the location of the UE terminal.

In the following description, various embodiments of the presentinvention are described in terms of the control plane of the respectivelocation systems.

First Embodiment

In the first embodiment, the home GMLC 2B of the target UE terminal 6Bis responsible for making a decision as to whether the location area ofthe target UE terminal is within or out of the coverage area of theclient's service.

The location system of this embodiment is configured as shown in FIG. 2by assuming that the UE terminal 6B is roaming from its home network Bto the foreign network C and its current location is requested by theclient terminal 1A of the network A to which the UE terminal 6B is notsubscribed. When the roaming UE terminal 6B enters the serving area ofthe RAN 4C, the UE terminal 6B registers its current location in thevisited MSC/SGSN 3C. When this registration is performed, the identityof the visited MSC/SGSN 3C is transmitted via the V-GMLC 2C to HLR/HSS106/HSS 5B of the subscribed UE terminal 6B where the identity of theMSC/SGSN 3C is stored as a serving node ID of the roaming UE terminal6B. In this way, the HLR/HSS 5B knows that the UE terminal 6B iscurrently visiting the mobile communication network C.

Client terminal 1A includes a packet assembler/disassembler 11 and a ASP(application service provider) software module 12. PAD 11, connected viaa switched communications network, not shown, to its home GMLC 2A,formulates a location request message 150 as shown in FIG. 3 andtransmits the message to the GMLC 2A. PAD 11 receives a locationresponse message from the GMLC 2A and disassembles it to determine ifthe received message is an error message or location information of thetarget UE terminal. If the response is an error message, the clientterminal 1A recognizes that the target UE terminal is roaming outside ofthe service coverage area and abandons its location-based service tothat UE terminal. If the response message notifies the locationinformation of the target UE, the client terminal 1A uses the receivedlocation information to establish a connection through a user plane 10and the visited MSC/SGSN 3C to the target UE terminal and causes its ASPsoftware module 12 and provides its location-based service to the UEterminal 6B.

As shown in FIG. 3, the location request message 150 has a number offields containing a message type, a source address (client'sidentifier), a destination address (phone number of target mobile UEterminal), and a service type indicating the type of location-basedservice the client terminal provides. The location request may furtherincludes a service coverage field indicating a service area to which theclient terminal 1A provides its location-based service. Specifically,the coverage information may include a list of country codes assignedaccording to the international telephone numbering plan for ISDNnetworks, designating the countries or areas where the client terminalprovides location-based service.

When the client terminal 1A requests the location of the UE terminal 6Bfrom the location system, it transmits the location request message toits home network A. GMLC 2A, serving as a requesting node to receivethis location request message, recognizes from its destination fieldthat GMLC 2B is the home GMLC of the UE terminal 6B and forwards thelocation request message to H-GMLC 2B.

As will be described later, if UE's location area is within the client'sservice coverage areas the home GMLC 2B forwards the client's locationrequest to the V-GMLC 2C, which forwards it to the V-MSC/SGSN 3C. Inresponse, the V-MSC/SGSN 3C performs a location measurement process incollaboration with RAN 4C and returns a location report to the home GMLC2B, which is forwarded through the requesting GMLC 2A to the clientterminal 1A. If the location area of UE terminal 6B is out of thecoverage area of the client'service, the V-MSC/SGSN 3C returns an errormessage to the H-GMLC 2B, which is forwarded through the R-GMLC 2A tothe client terminal 1A.

The requesting GMLC 2A includes a location requestor 21 which receives alocation request message from the PAD 11 and forwards it to the homeGMLC 2B and a coverage area memory 22 for storing service coverageinformation which may be received well in advance of the locationrequest or contained in the location request message. Location requestor21 receives a location response message from the home GMLC 2A andforwards it to the PAD 11.

In the H-GMLC 2B, the location request from the R-GMLC 2A is supplied toa coverage area searcher 33, a serving node ID requester 34, and alocation requester 37. Coverage area searcher 33 responds to thereceived location request message by making a search through a cachememory 32 which stores a plurality of frequently accessed coverageinformation corresponding to a plurality of sets of clients' identitiesand service types. Therefore, the coverage area searcher 33 uses theclient's ID and service type contained in the received location requestas a search key for detecting a corresponding coverage area.

If the coverage area of the client's location-based service is detectedin the cache memory 32, the detected coverage information is suppliedfrom the cache memory 32 to a comparator 36. If no coverage area isdetected, the coverage area searcher 33 requests a coverage arearequestor 31 to retrieve the corresponding coverage information from thecoverage area memory 22 of the R-GMLC 2A. The retrieved coverage areainformation is stored in the cache memory 32 and supplied from the cachememory 32 to the comparator 36.

With the coverage area information being supplied to the comparator 36,the coverage area searcher 33 enables the serving node ID requestor 34to retrieve the serving node (i.e., V-MSC/SGSN 3C) ID of the target UEterminal 6B. From the UE's ID contained in the received location requestmessage the serving node ID requester 34 knows that the home locationdatabase of the target UE terminal 6B is the HLR/HSS 5B to retrieve theserving node ID. The retrieved serving node ID is supplied to an LA/SNIDmapping memory 35 in which a plurality serving node ID's of V-MSC/SGSNsare mapped to a plurality of country codes that represent location areascovered by all MSC/SGSNs. Corresponding to the retrieved serving nodeID, the location area of the target UE terminal 6B is detected in themapping memory 35 and supplied to the comparator 36 where it is comparedwith the coverage area supplied from the cache memory 32. Comparator 36determines if the location area of the target UE terminal 6B is withinor out of the coverage area of the location-based service provided byclient terminal 1A.

If the UE's location area is outside of the service coverage, thecomparator 36 instructs the location requestor 37 to return an errormessage to the location requestor 21 of R-GMLC 2A, which forwards theerror message to the client terminal 1A. If the location area is withinthe coverage area, the comparator 36 instructs the location requestor 37to forward the client's location request message from the H-GMLC 2B toV-GMLC 2C. In response, the V-GMLC 2C performs a location measurement incollaboration with the V-MSC/SGSN 3C and RAN 4C and returns a locationresponse message (either error message or location information of thetarget UE terminal) to the location requester 37 of the H-GMLC 2B. Thislocation response message is forwarded through the location requesters37 and 21 to the PAD 11.

If the response message from the R-GMLC 2A contains the locationinformation of the target UE terminal 6B, the client terminal 1Aestablishes a connection to the target UE terminal 6B via the user-planeto the mobile switching center (i.e., V-MSC/SGSN 3C) and RAN 4C, and thePAD 11 activates the ASP software module 12 to perform location-basedservice to the UE terminal 6B.

For a full understanding of the operation of the first embodiment of thepresent invention, reference is made to FIGS. 4 and 5 to describe theoperation of the home GMLC 2B and a series of events that occurs in theassociated nodes of the location system.

Referring first to FIG. 5, when the UE terminal 6B has moved into theserving area of MSC/SGSN 3C, it automatically sends a locationregistration request 501 to the RAN 4C which forwards the mese to theMSC/SGSN 3C. In response to this registration request message, theV-MSC/SGSN 3C transmits its serving node ID to the HLR/HSS 5B throughthe V-GMLC 2C (event 502).

When the client terminal 1A transmits a location request message 511 tothe R-GMLC 2A, requesting the location of the target UE terminal 6B, thelocation request message is repeated to the H-GMLC 2B. In response tothis message (step 401, FIG. 4), the home GMLC 2B reads data from theSA, DA and service type fields of the received location request message(step 402). Coverage area searcher 33 determines, at step 403, whethercoverage area information of client's location-based service is storedin the cache memory 32 using the client's ID and service type receivedfrom the R-GMLC 2A, as indicated by event 512 in FIG. 5. If the decisionat step 403 is negative, the coverage area searcher 33 instructs thecoverage information requestor 31 to request the coverage areainformation from the R-GMLC 2A at step 404 and stores it in the cachememory 32 (events 513, 514).

If the corresponding coverage information is either detected in thecache memory 32 or retrieved from the R-GMLC 2A, the SN-ID requestor 34is then enabled to request the serving node ID of the target UE terminal6B from the HLR/HSS 5B (step 406, events 515, 516).

At step 407, corresponding to the serving node ID retrieved from theHLR/HSS 5B, the location area of the target UE terminal 6B is detectedin the LA/SNID memory 35 (event 517). At step 408, the comparator 36makes a comparison between the location area and the coverage area anddetermines if the location area is within or out of the coverage area ofthe client's service (event 518). If the location area is out of thecoverage area, flow proceeds from step 408 to step 409 to send an errormessage from the location requestor 37 to the R-GMLC 2A, which isforwarded by R-GMLC 2A to the client terminal (event 519). If thelocation area is within the coverage area of the client's service, flowproceeds to step 410 to forward the client's location request to theV-GMLC 2C (event 520). V-GMLC 2C requests the location information ofthe UE terminal 6B from the V-MSC/SGSN 3C. In response, the V-MSC/SGSN3C performs a location measurement procedure 521 in collaboration withthe RAN 4C and determines the location of the target UE terminal 6B andreturns a location response message 521 to the H-GMLC 2B. Home GMLC 2Bforwards the location response message to the R-GMLC 2A (step 411, event522). Client terminal 1A establishes a connection to the UE terminal 6Bto perform a location-based service to the target UE terminal (event523).

Second Embodiment

FIG. 6 is a block diagram of the location system configured according toa second embodiment of the present invention. In the second embodiment,the requesting GMLC 2A is responsible for making a decision as towhether the location area of the target UE terminal 6B roaming to thenetwork C is within or outside of the client's service coverage area. Ifthe location area is within the service coverage area, the requestingGMLC 2A forwards the location request message of the client terminal tothe home GMLC 2B, where the message is checked for privacy. If themessage is verified, the home gateway 2B forwards the message to thevisited GMLC 2C, which in turn requests the location information of thetarget UE terminal from the serving node 3C. If the location area of UEterminal is out of the service coverage area, the requesting GMLC 2Aformulates an error message and transmits it to the client terminal 1A.

More specifically, in the requesting GMLC 2A, the location requestmessage from the client terminal 1A is supplied to a coverage areamemory 23, a serving node ID requestor 24, and a location requestor 27.Coverage area memory 23 stores a plurality of service coverageinformation corresponding to a plurality of sets of clients' identitiesand service types in advance of the location request message.Corresponding to the client's ID and service type contained in thereceived location request, service coverage information is read out ofthe coverage area memory 23 and supplied to a comparator 26. At the sametime, the serving node ID requestor 24 reads the UE's ID from the DAfield of the received location request message and retrieves the servingnode ID of the target UE terminal 6B from the HLR/HSS 5B. The retrievedserving node ID is supplied to an LA/SNID mapping memory 25 whichprovides mapping of a plurality of serving node IDs of V-MSC/SGSNs to aplurality of location area information representing location areascovered by these serving nodes. In other words, the serving node IDrepresents a geographical area covered by the serving node, and hencethe location area of a UE terminal can be ascertained by a serving nodeidentity. Thus, the location area of the target UE terminal 6B isdetected in the mapping memory 25 corresponding to the retrieved servingnode ID, and supplied to the comparator 26 where it is compared with thecoverage area represented by service coverage information retrieved fromthe coverage area memory 23. Comparator 26 determines whether thelocation area of the target UE terminal 6B is within or out of thecoverage area of the location-based service provided by the clientterminal 1A.

If the UE's location area is out of the service coverage area, thecomparator 26 instructs the location requestor 27 to formulate andtransmit an error message to the client terminal 1A. If the locationarea is within the coverage area, the comparator 26 instructs thelocation requestor 27 to forward the client's location request messageto the H-GMLC 2B. Since the home gateway 2B is operated by a networkoperator different from the operator of the requesting gateway 2A, themessage is checked for privacy in the home gateway 2B. If the message isverified, the H-GMLC 2B repeats the message to the V-GMLC 2C, which inturn requests the V-MSC/SGSN 3C to perform a location measurementprocess in collaboration with the RAN 4C and return a location response(report) message (either error message or location information of thetarget UE terminal) to the location requestor 27. The location responsemessage from the V-GMLC 2C is sent back through the gateways 2B and 2Ato the client's PAD 11.

Similar to the first embodiment, if the location response messagecontains the location information of the target UE terminal 6B, theclient terminal 1A establishes a connection through the user plane tothe target UE terminal 6B via the V-MSC/SGSN 3C and RAN 4C and the PAD11 activates the ASP software module 12 to perform location-basedservice to the UE terminal 6B.

A sequence diagram for describing the operation of the second embodimentis shown in FIG. 7 in which events corresponding to those in FIG. 5 aremarked by the same numerals as those in FIG. 5 and the description thereof is omitted. When the client terminal 1A transmits a location requestmessage 701 to the network, the R-GMLC 2A receives the message and readsdata from the SA, DA and service type fields of the received locationrequest message. The coverage area information of client'slocation-based service is read from the coverage area memory 23 andsupplied to the comparator 26. Then, the serving node ID requestor 24requests the serving node ID of the target UE terminal 6B from theHLR/HSS 5B (events 702, 703). The location area of the target UEterminal 6B is detected in the LA/SNID mapping memory 25 correspondingto the retrieved serving node ID (event 704). Comparator 26 determinesif the location area is within or out of the coverage area of theclient's service (e vent 705). If the location area is out of thecoverage area, an error message is sent from the location requestor 27to the client terminal (event 706). If the location area is within thecoverage area of the client's service, the client's location request issent from the location requestor 27 to V-GMLC 2C via H-GMLC 2B (event707). V-GMLC 2C requests the location information of the UE terminal 6Bfrom the V-MSC/SGSN 3C, which in turn performs a location measurementprocedure 708 in collaboration with the RAN 4C and determines thelocation of the target UE terminal 6B and returns a location responsemessage via H-GMLC 2B to R-GMLC 2A, which forwards the message to theclient terminal 1A (event 709). Client terminal 1 a establishes aconnection through the user plane to the UE terminal 6B to perform alocation-based service to the target UE terminal.

Third Embodiment

In the previous embodiments, the relationships between location areas ofUE terminals and serving node (MSC/SGSN) identities are mapped in thememory 35 of network B and the memory 25 of network A. However, there isa possibility that these mapping relationships can only be establishedin the network C. If the location of a UE terminal visiting the networkC is requested by the client terminal 1A, the location response wouldresult in the client terminal 1A receiving an error message. The thirdembodiment of the present invention is aimed at eliminating suchfruitless location requests.

The location system of the third embodiment is configured as shown inFIG. 8. Similar to FIG. 6, the R-GMLC 2A includes coverage area memory23 for storing a plurality of service coverage information correspondingto a plurality of sets of client IDs and service types which have beenreceived from client terminals. A location request message from theclient terminal 1A, which is received by the R-GMLC 2A, is supplied tothe coverage area memory 23, serving node ID requestor 24 and locationrequestor 27. In response, the serving node ID requestor 24 retrievesthe serving node ID from the HLR/HSS 5B of the target UE terminal 6B.The retrieved serving node ID is supplied to a country code detector 28and the location requestor 27. Country code detector 28 extracts fromthe received serving node ID the country code of a geographical area towhich the UE terminal 6B is visiting and feeds it to the coverage areamemory 23. Using the detected country code as well as the client's IDand service type contained in the location request message, the servicecoverage information of the client's service is selected from thecoverage area memory 23 and fed to the location requestor 27. As shownin FIG. 9, the location requestor 27 formulates a location requestmessage 151 containing the supplied serving node ID and service coverageinformation and transmits the message via the H-GMLC 2B to the V-GMLC2C.

V-GMLC 2C includes an LA/SNID mapping memory 41, a comparator 42 and alocation requestor 43. LA/SNIC mapping memory 41 provides mapping of aplurality of serving node ID's of all V-MSC/SGSNs of the network C to aplurality of location area information representing geographical areasserved by all V-MSC/SGSNs of network C. Corresponding to the servingnode ID contained in the location request message 151, the location areaof the target UE terminal 6B is retrieved from the mapping memory 41 andsupplied to the comparator 42. Comparator 42 compares the servicecoverage information (CA) contained in the received message with thelocation area (LA) represented by the data retrieved from the mappingmemory 41 and determines if the location area of the target UE terminal6B is within or out of the service coverage area.

If the UE's location area is out of the service coverage area, thecomparator 42 instructs the location requester 43 to return an errormessage to the H-GMLC 2B, which is repeated through the locationrequestor 27 of R-GMLC 2A to the client terminal 1A. If the locationarea is within the coverage area, the comparator 42 instructs thelocation requestor 43 to forward the client's location request messageto the V-GMLC 2C. In response, the V-GMLC 2C performs a locationmeasurement process in collaboration with the V-MSC/SGSN 3C and RAN 4Cand returns a location response message (either error message orlocation information of the target UE terminal) from the locationrequester 43 to the H-GMLC 2B, which is repeated through the R-GMLC 2Ato the client terminal 1A.

A sequence diagram of the operation of the third embodiment is shown inFIG. 10. UE terminal 6B is first registered in the V-MSC/SGSN 3C. Inresponse to this registration, the node ID of the V-MSC/SGSN 3C is sentto the HLR/HSS 5B and stored as a serving node ID of the UE terminal 6B(event 1000, FIG. 10).

When the client terminal 1A transmits a location request message 1001 tothe network, the R-GMLC 2A receives the message and reads data from itsSA, DA and service type fields. Then, the serving node ID requestor 24requests the serving node ID of the target UE terminal 6B from theHLR/HSS 5B (events 1002, 1003). From the retrieved serving node ID, thecountry code detector 28 extracts the country code of the country orgeographical area where the target UE terminal is visiting.Corresponding to the extracted country code, service coverageinformation is retrieved from the coverage area memory 23 and suppliedto the location requestor 27 (event 1004). A location request messagecontaining the serving node ID and the coverage area information istransmitted from the location requester 27 to the V-GMLC 2C via theH-GMLC 2B (event 1005).

In the V-GMLC 2C, the location area of the UE terminal 6B is detectedfrom the mapping memory 41 using the serving node ID contained in thelocation request message and compared in the comparator 42 with thecoverage area information contained in the same location requestmessage. Comparator 42 determines if the location area is within or outof the coverage area of the client's service (e vent 1006). If thelocation area is out of the coverage area, an error message is sent fromthe location requestor 43 to the client terminal (event 1007). If thelocation area is within the coverage area of the client's service, thelocation request is forward from the location requester 43 to the V-GMLC2C. V-GMLC 2C requests the location information of the UE terminal 6Bfrom the V-MSC/SGSN 3C, which in turn performs a location measurementprocedure (event 1008) in collaboration with the RAN 4C and determinesthe location of the target UE terminal 6B and returns a locationresponse message to the R-GMLC 2A, which forwards the message to theclient terminal 1A (event 1009). Client terminal 1A establishes aconnection to the UE terminal 6B to perform a location-based service tothe target UE terminal.

Fourth Embodiment

It is desirable that the coverage area information maintained in theR-GMLC 2A and the LA/SNID mapping relationships maintained in the R-GMLCor H-GMLC be constantly updated to reflect most recent status.

The fourth embodiment of the present invention is shown in FIG. 11, inwhich parts corresponding to those in FIG. 2 are marked with the samenumerals as used in FIG. 2 and the description thereof is omitted.

V-GMLC 2C includes an updator 44, a location area memory 45 and anupdate requester 46. Location area memory 45 stores a plurality of areasserved by the V-MSC/SGSN 3C. Updator 44 receives most recent data whichmay be manually entered by the operator of network C whenever a changeoccurs in the serving areas of the MSC/SGSN 3C due to an alternation orexpansion of the network C. Update requestor 46 formulates an updaterequest message from the area information of the memory 45 and the mostrecent data and transmits the update message to the H-GMLC 2B.

H-GMLC 2B is of the same configuration as that shown in FIG. 2 with theexception that an updator 38 is provided for receiving the updaterequest message from the update requestor 46 of V-GMLC 2C and updatingthe LA/SNID mapping memory 35 to reflect the change made in the LAmemory 45 of V-GMLC 2C. Updator 38 then returns an acknowledgmentmessage to the update requestor 46.

Client terminal 1A includes an updator 13, a coverage area memory 14 andan update requester 15. Coverage area memory 14 stores a plurality ofcoverage area information indicating a number of coverage areas of aparticular service type if the client terminal provides only onelocation-based service or provides mapping of a plurality of coverageinformation to a number of service types if the client terminal providesmore than one location-based services. Most recent data is manuallyinput to the updator 13 whenever expansion or alternation is made in theservice coverage area stored in the memory 14. Update requestor 15formulates an update request message from the information stored in thememory 14 and the most recent data and transmits the update message tothe R-GMLC 2A.

R-GMLC 2A includes an updator 29 which responds to the update requestmessage from the client terminal 1A by updating the coverage area memory22 and returns an acknowledgment message to the update requester 15.R-GMLC 2A may additionally includes an update requestor, not shown, fortransmitting an update request message to the coverage area requester 31of H-GMLC 2B to update the cache memory 32 when the coverage memory 22is updated.

In the H-GMLC 2B, the cache memory 32 is updated with the coverageinformation of the R-GMLC 2A when the coverage area searcher 33determines that the coverage information of the requesting clientterminal is not found in the cache memory 32 and enables the coveragearea requestor 31 to request it from the coverage area memory 22.

Following the location registration of the roaming UE terminal 6B to theV-MSC/SGSN 3C in the same manner as described in the previousembodiments, the operation of the location system of FIG. 11 proceeds asshown in FIG. 12.

When an update is made is the LA memory 45 of V-GMLC 2C, an updaterequest message is sent to the H-GMLC 2B (event 1201) to update theLA/SNID mapping memory 35 and an update acknowledgment message isreturned to the V-GMLC 2C (event 1202). If an update is made in thecoverage area memory 14 of the client terminal 1A, an update requestmessage is sent to the R-GMLC 2A (event 1203) to update the coveragearea memory 22 and an update acknowledgment message is returned to theclient terminal (event 1204).

When the client terminal 1A transmits a location request message 1205via the R-GMLC 2A to the H-GMLC 2B, the latter determines if thecoverage area information of the client's location-based service isstored in the cache memory 32 using the client's ID and service type(event 1206). If no corresponding coverage information is detected, theH-GMLC 2B requests the coverage area information from the R-GMLC 2A(event 1207) and stores it in the cache memory 32 (event 1208). If thecorresponding coverage information is detected in the cache memory 32,the H-GMLC 2B requests the serving node ID of the target UE terminal 6Bfrom the HLR/HSS 5B (events 1209, 1210). Corresponding to this servingnode ID, the location area of the target UE terminal 6B is detected inthe LA/SNID memory 35 (event 1211) and a comparison is made between thelocation and coverage areas (event 1212). If the location area is withinor out of the coverage area of the client's service (event 1213). If thelocation area is out of the coverage area of the client's service, anerror message is sent from H-GMLC 2B and forwarded through R-GMLC 2A tothe client terminal (event 1213). If the location area is within thecoverage area, the client's location request is forwarded to the V-GMLC2C (event 1214). V-GMLC 2C requests the location information of the UEterminal 6B from the V-MSC/SGSN 3C. In response, the V-MSC/SGSN 3Cperforms a location measurement procedure 1215 in collaboration with theRAN 4C and determines the location of the target UE terminal 6B andreturns a location response message 1216 through the H-GMLC 2B andR-GMLC 2A to the client terminal. Client terminal 1A establishes aconnection to the UE terminal 6B to perform a location-based service tothe target UE terminal.

Fifth Embodiment

In the previous embodiments, the networks A, B and C owned and operatedby network operators A, B and C, respectively. In the fifth embodiment,the networks A and B are operated by a common network operator AB asindicated by a representative network AB as shown in FIG. 13. In thefollowing description, it is assumed that a client terminal 1AB ofnetwork AB is requesting the location of a UE terminal 6AB of the samenetwork which is roaming to the network C. In this embodiment, the GMLC2AB operates as a requesting GMLC as well as a home GMLC, or RH-GMLC,and the GMLC 2C as a visited GMLC, as shown in FIG. 14.

RH-GMLC 2AB is responsible for making a decision as to whether thecoverage area of the client's service is within or out of the locationarea of the target UE terminal 6AB.

In the RH-GMLC 2AB, the location request from the client terminal 1AB issupplied to a coverage area memory 123, a serving node ID requestor 124,and a location requestor 127. Coverage area memory 123 stores aplurality of coverage information corresponding to a plurality of setsof client IDs and service types. In response to the location request,the coverage area information is read out of the coverage area memory123 corresponding to the client's ID and service type contained in thereceived message and supplied to a comparator 126. Serving node IDrequestor 124 reads the UE's ID from the received message and requeststhe serving node ID of the target UE terminal 6AB from the HLR/HSS 5AB.The serving node ID from the HLR/HSS 5AB is supplied to a LA/SNIDmapping memory 125 which provides mapping of a plurality of serving nodeIDs of V-MSC/SGSNs and location areas to which roaming UE terminals arevisiting. Corresponding to the retrieved serving node ID, the locationarea of the target UE terminal 6B is detected in the mapping memory 125and supplied to the comparator 126 where it is compared with thecoverage area data supplied from the coverage area memory 123.Comparator 126 determines whether the location area of the target UEterminal 6AB is within or out of the coverage area of the location-basedservice provided by the client terminal 1AB.

If the UE's location area is out of the service coverage area, thecomparator 126 instructs the location requestor 127 to formulate andtransmit an error message to the client terminal 1AB. If the locationarea is within the coverage area, the comparator 126 instructs thelocation requester 127 to forward the client's location request messageto the V-GMLC 2C. In response, the V-GMLC 2C requests the V-MSC/SGSN 3Cto perform a location measurement process in collaboration with the RAN4C and returns a location response message (either error message orlocation information of the target UE terminal) to the locationrequester 127. The location response message from the V-GMLC 2C isforwarded to the PAD 11.

A sequence diagram for describing the operation of the second embodimentis shown in FIG. 15. UE terminal 6AB is first registered in theV-MSC/SGSN 3C. In response to this registration, the node ID of theV-MSC/SGSN 3C is sent to the HLR/HSS 5AB and stored as a serving node IDof the UE terminal 6AB (event 1500.

When the client terminal 1AB transmits a location request message 1501to the network, the R-GMLC 2AB receives the message and reads data fromthe SA, DA and service type fields of the received location requestmessage. The coverage area information of client's location-basedservice is read from the coverage area memory 123 and supplied to thecomparator 126. Then, the serving node ID requestor 124 requests theserving node ID of the target UE terminal 6AB from the HLR/HSS 5AB(events 1502, 1503). The location area of the target UE terminal 6AB isdetected in the LA/SNID mapping memory 125 corresponding to theretrieved serving node ID (event 1504). Comparator 126 determines if thelocation area is within or out of the coverage area of the client'sservice (event 1505). If the location area is out of the coverage area,an error message is sent from the location requestor 127 to the clientterminal (event 1506). If the location area is within the coverage areaof the client's service, the client's location request is sent from thelocation requestor 127 to the V-GMLC 2C (event 1507). V-GMLC 2C requeststhe location information of the UE terminal 6AB from the V-MSC/SGSN 3C,which in turn performs a location measurement procedure 1508 incollaboration with the RAN 4C and determines the location of the targetUE terminal 6AB and returns a location response message to the RH-GMLC2AB, which forwards the message to the client terminal 1AB (event 1509).Client terminal 1 a establishes a connection to the UE terminal 6AB toperform a location-based service to the target UE terminal.

Sixth Embodiment

In the sixth embodiment, the networks B and C are operated by a commonnetwork operator BC as represented by a network BC, as shown in FIG. 16.It is assumed that a client terminal 1A of network A is requesting thelocation of a UE terminal 6BC of network BC which is currently connectedto the home network BC. In this embodiment, the GMLC 2A operates as arequesting GMLC, and GMLC 2BC operates as a home and a visited GMLC, orHV-GMLC which is responsible for making the in/out area decision, asshown in FIGS. 17 and 18.

UE terminal 6BC is first registered in the V-MSC/SGSN 3BC. In responseto this registration, the node ID of the V-MSC/SGSN 3BC is sent to theHLR/HSS 5BC and stored as a serving node ID of the UE terminal 6BC(event 1800, FIG. 18).

When the client terminal 1A transmits a location request message to theR-GMLC 2A, the latter recognizes from its destination field that HV-GMLC2BC is the home gateway of the target UE terminal 6BC and forwards thelocation request message to HV-GMLC 2BC, as indicated by an event 1801in the sequence diagram of FIG. 18.

In the HV-GMLC 2BC, the location request from the R-GMLC 2A is suppliedto a coverage area searcher 133, a serving node ID requestor 134, and alocation requestor 137. Coverage area searcher 133 responds to thereceived location request message by making a search through a cachememory 132 which stores a plurality of frequently accessed coverageinformation corresponding to a plurality of sets of clients' identitiesand service types (event 1802, FIG. 18). Coverage area searcher 133 usesthe client's ID and service type contained in the received message fordetecting a corresponding coverage area.

If the coverage area of the client's location-based service is detectedin the cache memory 132, the detected coverage area information issupplied to a comparator 136. If no coverage area is detected, thecoverage area searcher 133 requests a coverage area requestor 131 toretrieve the corresponding coverage information from the coverage areamemory 22 of the R-GMLC 2A (events 1803, 1804, FIG. 18). The retrievedcoverage area information is stored in the cache memory 132 and suppliedfrom the cache memory 132 to the comparator 136. Coverage area searcher133 enables the serving node ID requestor 134 to retrieve the servingnode (i.e., V-MSC/SGSN 3BC) ID of the target UE terminal 6BC from theHLR/HSS 5BC using the UE's ID contained in the received location requestmessage (events 1805, 1806). The retrieved serving node ID is suppliedto a LA/SNID mapping memory 135 in which a plurality serving node ID'sof V-MSC/S GSNs are mapped to a plurality of location areas served byMSC/SGSNs to which the UE terminals of network BC are currentlyconnected. Corresponding to the retrieved serving node ID, the locationarea of the target UE terminal 6BC is detected in the mapping memory 135and supplied to the comparator 136 where it is compared with thecoverage area data supplied from the cache memory 132 (events 1807,1808, FIG. 18). Comparator 136 determines if the location area of thetarget UE terminal 6BC is within or out of the coverage area of thelocation-based service provided by client terminal 1A.

If the UE's location area is out of the coverage area of the client'sservice, the comparator 136 instructs the location requester 137 toreturn an error message to the location requestor 21 of R-GMLC 2A, whichis forwarded to the client terminal 1A (event 1809). If the locationarea is within the coverage area, the comparator 136 instructs thelocation requester 137 to forward the client's location request to theV-MSC/SGSN 3BC (event 1810). In collaboration with the RAN 4C, theV-MSC/SGSN 3BC performs a location measurement (event 1811) and returnsa location response message 1812 to the location requestor 137 of theHV-GMLC 2BC. This location response message is forwarded through theR-GMLC 2A to the client terminal 1A.

Seventh Embodiment

The seventh embodiment of the present invention is a modification of thesixth embodiment. Similar to the sixth embodiment, the client terminal1A is requesting the location of the UE terminal 6BC currently connectedto the home network BC and the GMLC 2A operates as a requesting GMLC,and GMLC 2BC operates as a home-and-visited gateway. This embodimentdiffers from the sixth embodiment in that the requesting GMLC 2A ofclient terminal 1A is the area-decision gateway, as shown in FIGS. 19and 20.

UE terminal 6BC is first registered in the V-MSC/SGSN 3BC. In responseto this registration, the node ID of the V-MSC/SGSN 3BC is sent to theHLR/HSS 5BC and stored as a serving node ID of the UE terminal 6BC(event 2000, FIG. 20).

When the R-GMLC 2A receives a location request message from the clientterminal 1A (event 2001, FIG. 20), the message is supplied to a coveragearea memory 223, a serving node ID requestor 224, and a locationrequester 227. Coverage area memory 223 stores a plurality of coverageinformation corresponding to a plurality of sets of client IDs andservice types. In response to the location request, the coverage areainformation is read out of the coverage area memory 223 corresponding tothe client's ID and service type contained in the received message andsupplied to a comparator 226. Serving node ID requester 224 requests theserving node ID of the target UE terminal 6AB from the HLR/HSS 5BC(events 2002, 2003). The serving node ID from the HLR/HSS 5BC issupplied to a LA/SNID mapping memory 225 which provides mapping of aplurality of serving node IDs of V-MSC/SGSNs and location areas to whichUE terminals are currently connected. Corresponding to the retrievedserving node ID, the location area of the target UE terminal 6BC isdetected in the mapping memory 225 (event 2004) and supplied to thecomparator 226 where it is compared with the coverage area data suppliedfrom the coverage area memory 223. Comparator 226 determines whether thelocation area of the target UE terminal 6AB is within or out of thecoverage area of the location-based service provided by the clientterminal 1A (event 2005). If the UE's location area is out of theservice coverage area, the comparator 226 instructs the locationrequester 227 to formulate and transmit an error message to the clientterminal 1AB. If the location area is within the coverage area, thecomparator 226 instructs the location requestor 227 to forward theclient's location request message to the V-GMLC 2BC (event 2007). Inresponse, the V-GMLC 2BC requests the V-MSC/SGSN 3BC to perform alocation measurement process in collaboration with the RAN 4BC (event2008) and returns a location response message (either error message orlocation information of the target UE terminal) to the locationrequestor 227. The location response message from the V-GMLC 2BC isforwarded to the client terminal 1A (event 2009).

Eighth Embodiment

In the eighth embodiment, the networks A, B and C are owned and operatedby a common network operator ABC as represented by a network ABC, asshown in FIG. 21. It is assumed that a client terminal 1ABC isrequesting the location of a UE terminal 6ABC which is currentlyconnected to the home network ABC. In this embodiment, the GMLC 2ABCoperates as a requesting, home and visited gateway, or RHV-GMLC, asshown in FIGS. 22 and 23.

RHV-GMLC 2ABC is responsible for making a decision as to whether thecoverage area of the service provided by client terminal 1ABC is withinor out of the location area of the target UE terminal 6ABC.

UE terminal 6ABC is first registered in the V-MSC/SGSN 3ABC. In responseto this registration, the node ID of the V-MSC/SGSN 3ABC is sent to theHLR/HSS 5ABC and stored as a serving node ID of the UE terminal 6ABC(event 2300, FIG. 23).

When the RHV-GMLC 2ABC receives a location request from the clientterminal 1ABC (event 2301, FIG. 23), the request is supplied to acoverage area memory 223, a serving node ID requester 224, and alocation requestor 227. Coverage area memory 223 stores a plurality ofcoverage information corresponding to a plurality of sets of client IDsand service types. In response to the location request, coverage areainformation is read out of the coverage area memory 223 corresponding tothe client's ID and service type contained in the received message andsupplied to a comparator 226. Corresponding to the UE's ID contained inthe received message, the serving node ID of the target UE terminal 6ABCis requested by the serving node ID requestor 224 from the HLR/HSS 5ABCand supplied to a LA/SNID mapping memory 225 which provides mapping of aplurality of serving node IDs of V-MSC/SGSNs and location areas to whichUE terminals are currently connected (events 2302, 2303, FIG. 23).Corresponding to the retrieved serving node ID, the location area of thetarget UE terminal 6ABC is detected in the mapping memory 225 andsupplied to the comparator 226 for comparison with the coverage areadata from the coverage area memory 223 (event 2304). Comparator 226determines whether the location area of the target UE terminal 6ABC iswithin or out of the coverage area of the location-based serviceprovided by the client terminal 1ABC (event 2305).

If the UE's location area is out of the service coverage area, thecomparator 226 instructs the location requestor 227 to formulate andtransmit an error message to the client terminal 1AB (event 2306). Ifthe location area is within the coverage area, the comparator 226instructs the location requestor 227 to forward the client's locationrequest message to the V-MSC/3ABC to perform a location measurementprocess in collaboration with the RAN 4ABC and returns a locationresponse message (either error message or location information of thetarget UE terminal) to the location requestor 227. The location responsemessage from the RHV-GMLC 2ABC is forwarded to the client terminal.

Ninth Embodiment

The ninth embodiment of the present invention is a first modification ofthe third embodiment. The ninth embodiment, shown in FIGS. 24 and 25,differs from the third embodiment (FIGS. 8-10) in that the networks Aand B are owned and operated by a common network operator AB similar tothat shown in FIG. 13, and the GMLC 2AB operates as a requesting andhome gateway RH-GMLC for the client terminal 1AB. It is assumed that theclient terminal 1AB requests the location of UE terminal 6AB of the samenetwork AB.

V-GMLC 2C is the gateway responsible for making the in/out areadecision. RH-GMLC 2AB and V-GMLC 2C are configured in a manner similarto the R-GMLC 2A and V-GMLC 2C of FIG. 8, respectively. Since RH-GMLC2AB also acts as a home gateway, it directly interfaces the V-GMLC 2C.

As shown in FIG. 25, UE terminal 6AB is first registered in theV-MSC/SGSN 3C. In response to this registration, the node ID of theV-MSC/SGSN 3C is sent to the HLR/HSS 5AB and stored as a serving node IDof the UE terminal 6AB (event 2500, FIG. 25).

When the client terminal 1AB transmits a location request message 2501to the RH-GMLC 2AB, the serving node ID requestor 24 requests theserving node ID of the target UE terminal 6AB from the HLR/HSS 5AB(events 2502, 2503). Country code detector 28 detects the country codeof the country or area where the target UE terminal 6AB is visiting.Corresponding to the detected country code, coverage area information isretrieved from the coverage area memory 23 and supplied to the locationrequestor 27 (event 2504). A location request message containing theserving node ID and the coverage area information is transmitted fromthe location requestor 27 to the V-GMLC 2C (event 2505).

In the V-GMLC 2C, the location area of the UE terminal 6AB is detectedfrom the LA/SNID mapping memory 41 using the serving node ID containedin the location request message and compared in the comparator 42 withthe coverage area information contained in the same location requestmessage. Comparator 42 determines if the location area is within or outof the coverage area of the client's service (event 2506). If thelocation area is out of the coverage area, an error message is sent fromthe location requestor 43 to the client terminal (event 2507). If thelocation area is within the coverage area of the client's service, thelocation request is forward from the location requestor 43 to the V-GMLC2C. V-GMLC 2C requests the location information of the UE terminal 6ABfrom the V-MSC/SGSN 3C, which in turn performs a location measurementprocedure (event 2508) in collaboration with the RAN 4C and determinesthe location of the target UE terminal 6AB and returns a location reportmessage to the V-GMLC 2C, which forwards the message through the RH-GMLC2AB to the client terminal 1AB (event 2509). Client terminal 1ABestablishes a connection to the UE terminal 6AB to perform alocation-based service to the target UE terminal.

Tenth Embodiment

The tenth embodiment of the present invention is a second modificationof the third embodiment. The tenth embodiment, shown in FIGS. 26 and 27,differs from the third embodiment (FIGS. 8-10) in that the networks Band C are owned and operated by a common network operator BC similar tothat shown in FIG. 16, and the GMLC 2BC operates as a home and a visitedgateway HV-GMLC for the client terminal 1A. It is assumed that theclient terminal 1A of network A requests the location of UE terminal 6BCof the network BC.

HV-GMLC 2BC is the gateway responsible for making the in/out areadecision. Both R-GMLC 2A and HV-GMLC 2BC are configured in a mannersimilar to the R-GMLC 2A and V-GMLC 2C of FIG. 8, respectively. SinceHV-GMLC 2BC is also a home gateway, it directly interfaces the R-GMLC2A.

As shown in FIG. 27, UE terminal 6BC is first registered in theV-MSC/SGSN 3BC. In response to this registration, the node ID of theV-MSC/SGSN 3BC is sent to the HLR/HSS 5BC and stored as a serving nodeID of the UE terminal 6BC (event 2700.

When the client terminal 1AB transmits a location request message 2701to the R-GMLC 2A, the serving node ID requestor 24 requests the servingnode ID of the target UE terminal 6BC from the HLR/HSS 5BC (events 2702,2703). Country code detector 28 detects the country code of the countryor area where the target UE terminal 6BC is visiting. Corresponding tothe detected country code, coverage area information is retrieved fromthe coverage area memory 23 and supplied to the location requestor 27(event 2704). A location request message containing the serving node IDand the coverage area information is transmitted from the locationrequestor 27 to the V-GMLC 2C (event 2705). In the V-GMLC 2C, thelocation area of the UE terminal 6BC is detected from the LA/SNIDmapping memory 41 using the serving node ID contained in the locationrequest message and compared in the comparator 42 with the coverage areainformation contained in the same location request message. Comparator42 determines if the location area is within or out of the coverage areaof the client's service (event 2706). If the location area is out of thecoverage area, an error message is sent from the location requestor 43to the client terminal (event 2707). If the location area is within thecoverage area of the client's service, the location request is forwardfrom the location requester 43 to the V-GMLC 2C. V-GMLC 2C requests thelocation information of the UE terminal 6BC from the V-MSC/SGSN 3C,which in turn performs a location measurement procedure (event 2708) incollaboration with the RAN 4C and determines the location of the targetUE terminal 6BC and returns a location report message to the V-GMLC 2C,which forwards the message through the R-GMLC 2A to the client terminal1A (event 2709). Client terminal 1A establishes a connection to the UEterminal 6BC to perform a location-based service to the target UEterminal.

Eleventh Embodiment

In the previous embodiments, the serving node ID of the target UEterminal is instantly requested by a receiving gateway when it receivesa location request message from the client terminal. There is apossibility that a previously requested serving node ID may be used forlater location requests.

The eleventh embodiment of the present invention is as shown in FIG. 28,which is implemented as a modification of the second embodiment (FIG. 6)in order to take advantage of the possibility that previously requestedserving node IDs are stored and utilized for later location requests.

As shown in FIG. 28, the R-GMLC 2A differs from that of FIG. 6 by theprovision of a cache memory 50 for mapping a plurality of serving nodeIDs to corresponding UE IDs which have previously obtained by the SNIDrequestor 24 from the HLR/HSS 5B. A serving node ID searcher 52 isprovided for making a search through the cache memory 51 for detecting aserving node ID using a UE ID contained in the location request messagefrom the client terminal 1A. The detected serving node ID is suppliedfrom the cache memory 51 to the LA/SNID mapping memory 25 as a searchkey for detecting a corresponding location area. If no serving node IDis detected in the cache memory 50, the SNID searcher 51 enables theSNID requestor 24 to request the serving node ID from the HLR/HSS 5B.

As shown in FIG. 29, the UE terminal 6B is first registered in theV-MSC/SGSN 3C and its node ID is sent and stored in the HLR/HSS 5B(event 2900). When the client terminal 1A sends a location requestmessage to the R-GMLC 2A, requesting the location of the target UEterminal 6B, the message is forwarded to the H-GMLC 2B. SNID searcher 51searches the cache memory 50 using the ID of the target UE terminal 6B(event 2902). If no serving node ID is detected in the cache memory 50,the H-GMLC 2B requests the serving node ID from the HLR/HSS 5B (events2903, 2904). The operation of this embodiment proceeds as indicated byevents 2905 to 2910 corresponding to events 704 to 709 of FIG. 7.

In this way, frequently accessed serving node identifiers can beobtained instantly from the cache memory 51. This reduces the amount oftraffic from the requesting gateway to associated HLR/HSSs.

Twelfth Embodiment

In the first embodiment, the H-GMLC 2B is provided with a requester forrequesting the coverage information from the R-GMLC 2A. The twelfthembodiment is shown in FIGS. 30 and 31. After the UE terminal 6B isregistered in the V-GMLC 2C and the serving node ID of the gateway 2C isstored in the HLR/HSS 5B (event 3100, FIG. 31), the R-GMLC 2A transmitsa location request message, requesting the location of a target UEterminal 6B, to the H-GMLC 2B (event 3101). In response to this locationrequest message, the location requester 21 reads coverage informationfrom the coverage area memory 22 corresponding to the client ID and theservice type contained in the received message and forwards the messageto the H-GMLC 2B by encapsulating the coverage information in thetransmitted message (event 3102).

In the H-GMLC 2B, the SNID requester 34 responds to the receivedlocation request message by requesting the serving node ID of the targetUE terminal 6B from the HLR/HSS 5B (events 3103, 3104). Using theserving node ID from the HLR/HSS 5B, the LA/SNID mapping memory 35retrieves corresponding location area information (event 3105) andsupplies it to the comparator 36. On the other hand, the comparator 36reads the coverage information from the received message and compares itwith the location area information from the LA/SNID mapping memory 35and makes a decision as to whether the location area is within oroutside the coverage area (event 3106). Depending on the result of thedecision, the location requestor 37 transmits an error message to theR-GMLC 2A (event 3107) or forwards the location request message to theV-GMLC 2C (event 3108) to perform a location measurement process 3109. Alocation report message will then be transmitted to the client terminal1A (event 3110).

Thirteenth Embodiment

In the twelfth embodiment, the home gateway 2B instantly requests theserving node identifier of the target UE terminal from the associatedHLR/HSS, the cache memory can also be provided in the home gateway 2Bfor storing frequently accessed serving node identifiers as shown inFIG. 32. The home GMLC 2B of this location system is identical to thatof FIG. 30 except that it additionally includes a cache memory 60 and aserving node ID searcher 61.

After the UE terminal 6B is registered in the V-GMLC 2C and the servingnode ID of the gateway 2C is stored in the HLR/HSS 5B (event 3300, FIG.33), the R-GMLC 2A transmits a location request message, requesting thelocation of a target UE terminal 6B, to the H-GMLC 2B (event 3301). Inresponse to this location request message, the location requester 21reads coverage information from the coverage area memory 22corresponding to the client ID and the service type contained in thereceived message and forwards the message to the H-GMLC 2B byencapsulating the coverage information in the transmitted message (event3302).

In the H-GMLC 2B, the SNID searcher 61 makes a search through the cachememory 60 using the ID of the target UE terminal 6B (event 3303). If noserving node ID is detected in the cache memory 60, the SNID searcher 61enables the SNID requester 34 to request the serving node ID from theHLR/HSS 5B and the LA/SNID mapping memory 35 receives the serving nodeID (events 3304, 3305). If the serving node ID is detected in the cachememory 61, the detected ID is supplied to the LA/SNID mapping memory 35.The corresponding location area of the target UE terminal 6B is detectedin the mapping memory 35 corresponding to the serving node ID. On theother hand, the comparator 36 reads the coverage information from thereceived message and compares it with the location area information fromthe LA/SNID mapping memory 35 and makes a decision as to whether thelocation area is within or outside the coverage area (event 3307).Depending on the result of the decision, the location requester 37transmits an error message to the R-GMLC 2A (event 3308) or forwards thelocation request message to the V-GMLC 2C (event 3309) to perform alocation measurement process 3310. A location report message will thenbe transmitted to the client terminal 1A (event 3311).

Fourteenth Embodiment

In the previous embodiments, the requesting gateway is aware of theidentity of the home gateway of a target UE terminal and that theHLR/HSS which maintains the serving node identity of the target UE isaccessed from a gateway which is predetermined for making the in/outarea decision. However, there is a possibility of the requesting gatewayunaware of the identity of a home gateway.

In the fourteenth embodiment, one of the requesting and home gatewaystakes the responsibility to make the in/out area decision depending onwhether the requesting gateway is aware of the identity of the homegateway. Specifically, the HLR/HSS of a target UE terminal is accessedfrom the requesting gateway if it is unaware of the identity of the homegateway or accessed from the home gateway if the requesting gateway isaware of its identity.

FIG. 34 is a block diagram of the location system of the fourteenthembodiment. In this location system, R-GMLC 2A, H-GMLC 2B and V-CMLC 2Care respectively owned and operated by network operators A, B and C asillustrated in FIG. 1.

R-GMLC 2A is similar to the R-GMLC 2A of FIG. 6 except that itadditionally includes a cache memory 70 for storing identities of homeGMLCs (HGIDs) and corresponding identities of target UE terminals, anHGID searcher 71 and an ID separator 72. HGID searcher 71 makes a searchthrough the cache memory 70 for an HGID using the identity (U-ID) oftarget UE terminal 6B contained in the location request message from theclient terminal 1A.

If no corresponding HGID is found, the HGID searcher determines that theR-GMLC 2A is responsible for making the in/out area decision and enablesthe serving-node ID requester 24 to request the SNID and HGID from theHLR/HSS 5B. The response message from the HLR/HSS 5B is supplied to theID separator 72, where the HGID is separated from the serving node ID ofthe V-MSC/SGSN 31 and stored in the cache memory 70. The SNID is, on theother hand, supplied through the requestor 24 to the LA/SNID mappingmemory 28 for detecting the location area of the target UE terminal 6B.Comparator 26 makes a comparison between the detected location areainformation and the coverage area information from the coverage areamemory 23 and determines if the location area is within or outside ofthe coverage area. If the location area is outside of the coverage area,the location requester 27 formulates and transmits an error message tothe client terminal 1A. If the location area is within the coveragearea, the location requester 27 forwards the location request messagefrom the client terminal 1A to the H-GMLC 2B.

If the HGID searcher 71 detects a corresponding HGID in the cache memory70, it determines that the H-GMLC 2B is responsible for making thein/out area decision and applies a “add CA” command signal to thelocation requester 27 to include the coverage area information in thelocation request message from the client terminal and forwards to theH-GMLC 2B.

H-GMLC 2B is similar to the H-GMLC 2B of FIG. 30, but differs in that itadditionally includes a cache memory 80 for storing serving nodeidentities and corresponding identities of target UE terminals and anSNID searcher 81.

If the location request message from the R-GMLC 2A contains coverageinformation, the SNID searcher 81 determines that the H-GMLC 2B isresponsible for making the in/out area decision and makes a searchthrough the cache memory 80 for an SNID using the identity (U-ID) oftarget UE terminal 6B contained in the received location requestmessage. If no corresponding SNID is found in the cache memory 80, theSNID searcher 81 enables the SNID requestor 34 to request the servingnode ID of the target UE terminal 6B from the HLR/HSS 5B and feeds thereceived SNID to the LA/SNID mapping memory 35. If corresponding SNID isdetected in the cache memory 80, the detected ID is supplied from thecache memory 80 to the LA/SNID mapping memory 35. The SNID supplied, inthis way, to the mapping memory 35 is used as a search key for detectinga corresponding location area information. Comparator 36 makes acomparison between the location area information detected in the memory35 and the coverage area information contained in the received locationrequest message and makes the in/out area decision. If the location areais outside of the coverage area, the location requestor 37 transmits anerror message to the R-GMLC 2A, which forwards it to the client terminal1A. If the location area is within the coverage area, the locationrequester 37 forwards the received location request message to theV-GMLC 2C.

If the location request message from the R-GMLC 2A contains no coverageinformation, it is determined that the H-GMLC 2B is not responsible formaking the in/out area decision. Location requestor 37 forwards thereceived message to the V-GMLC 2C.

Overall operation of the system of FIG. 34 is shown in the sequencediagrams of FIGS. 35A and 35B. When the serving node ID of V-MSC/SGSN 31is stored in the home location register (HLR/HSS) 5B of the roaming UEterminal 6B (event 3500, FIG. 35A), the client terminal 1A transmits alocation request message to the requesting GMLC 2A (event 3501). Inresponse, the HGID searcher 71 of the gateway 2A uses the identity oftarget UE terminal 6B to search the cache memory 70 for the node ID ofthe H-GMLC 2B (event 3502). If there is none, the requesting gateway 2Adetermines that it is responsible for making an in/out area decision.Searcher 71 enables the SNID requester 24 to request the identities ofthe UE's current serving-node V-MSC/SGSN 3C and the UE's home gateway 2Bfrom the HLR/HSS 5B (events 3503, 3504). The retrieved HGID is stored inthe cache memory 70 and the SNID is used to retrieve the location areainformation from the mapping memory 25 (event 3505). The location areais compared in the comparator 26 with coverage area stored in thecoverage area memory 23 (event 3506). If the location area is outside ofthe service coverage area, an error message is sent to the clientterminal 1A (even 3507). Otherwise, the location request message fromthe client terminal is forwarded to the home gateway 2B. Afterverification by the home gateway, the message is forwarded to thevisited gateway 2C (event 3508) to perform a location measurementprocess (event 3509) and a location report is transmitted to the clientterminal via the gateways 2B and 2A (event 3510).

If the HGID is detected in the cache memory 70, the requesting gateway2A determines that the home gateway 2B is responsible for making thein/out area decision. In this case, the HGID searcher 71 supplies an“add CA” command to the location requester 27 which, in response,retrieves the service coverage information from the memory 23 andinserts it into the location request message and forwards it to the homeGMLC 2B (event 3511).

The SNID searcher 81 of the home gateway responds to the locationmessage from the requesting gateway 2A by making a search through thecache memory 80 for an SNID corresponding to the identity of the targetUE terminal 6B (event 3512, FIG. 35B). If there is none, the SNIDsearcher 81 enables the SNID requestor 34 to request the SNID from theHLR/HSS 5B (events 3513, 3514). Corresponding to the requested SNID,location area information is retrieved from the mapping memory 35 (event3515) and compared in the comparator 36 with the coverage arearepresented by the service coverage information contained in thelocation message from the requesting gateway 2A (event 3516). If thelocation area is outside of the coverage area, an error message is sentto the client terminal 1A from the home gateway via the requestinggateway 2A (event 3517). Otherwise, the location request message fromthe requesting gateway 2A is forwarded to the visited gateway 2C (event3518) to perform a location measurement process 3519 and a locationreport is transmitted to the client terminal via the gateways 2B and 2A(event 3520).

Fifteenth Embodiment

The 3GPP specifies two types of location request. The first type is theimmediate location request where the location system replies immediatelyto the client terminal with the current location estimate if this couldbe available. The second type is the deferred location request forlocation contingent on some current or future events where the responsefrom the location system to the client may occur one time after therequest was sent. In the previous embodiments, the description was basedon the assumption that the location request message is of the immediatelocation request.

In the fourteenth embodiment, for example, if the location area of thetarget UE terminal is out of the coverage area of a client's service, anerror message is returned to the client terminal. This effectively savesGMLCs from making infertile requests to V-MSC/SGSNs in so far as theclient's location request is of the immediate type. Since there is apossibility that making a location estimate becomes a timely event justafter the target UE terminal has entered a service coverage area, it isnot desirable to immediately return an error message as a response to adeferred location request as soon as a decision is made that the UE'slocation area is outside of the coverage area.

In the fifteenth embodiment shown in FIG. 36, deferred location requestsare treated as a signal for disabling the in/out area decision, whilethe immediate type of location request is used as a signal for enablingthat decision. As shown in FIG. 37, the client terminal 1A transmits alocation request message in which a request type field is included inaddition to the source address, destination address and service typefields. The requesting gateway 2A forwards the location request messageto the home gateway 2B with a service coverage information field inaddition to the request type field.

The location system of FIG. 36 is similar to that of FIG. 34 except thatthe requesting and home gateways 2A and 2B additionally include requesttype detectors 90 and 100, respectively. These detectors are associatedwith their LA/SNID mapping memory and location requester to controltheir functions as described below.

The requesting GMLC 2A operates according to the flowchart of FIG. 38Aand the sequence diagrams of FIGS. 39A, 39B. With the serving node ID ofV-MSC/SGSN 3C being stored in the home location database 5B of thetarget UE terminal 6B (event 3900, FIG. 39A), a location request messageis sent from the client terminal. The requesting gateway 2A receives themessage (step 3801, event 3901) and reads its all data and supplies theclient ID and service type to the coverage area memory 23 and the UE'sID to the SNID requestor 24 and HGID searcher 71 (step 3802). At step3803, the HGID searcher 71 determines if the address of the H-GMLC 2Bcorresponding to the UE's ID is stored in the cache memory 70 (event3902). If the decision at step 3803 is affirmative, flow proceeds tostep 3804, where the request type detector 90 determines if the locationrequest is of deferred or immediate type (event 3903).

If the request message is of deferred type, the location requestor 27simply forwards the location request message to the home gateway 2B withno service coverage information (step 3805), which will then be verifiedand forwarded to the V-GMLC 2C (event 3904). If the request message isof immediate type, flow proceeds from step 3804 to step 3806, in whichthe location requestor 27 retrieves the service coverage informationfrom the coverage area memory 23 corresponding to the client's ID andthe service type, and reformulates the location request message with theretrieved coverage information and forwards the message to the H-GMLC 2B(event 3905).

If the address of the H-GMLC 2B is not stored in the cache memory 70,the SNID requestor 24 is enabled to request the serving node ID and thehome gateway ID (HGID) from the HLR/HSS 5B and stores the retrieved HGIDin the cache memory 70 (step 3807, events 3906, 3907). If the receivedlocation request is of the deferred type (step 3808), the locationrequestor 27 forwards the location request message with no coverageinformation to the home gateway 2B (step 3805), which will then beverified and forwarded to the V-GMLC 2C (event 3908).

If the received location request is of the immediate type (step 3808),the location area information representing the location area of UEterminal 6B is retrieved from the mapping memory 25 corresponding to theserving node ID (step 3809, event 3909) and compared in the comparator26 with the coverage area information supplied from the coverage areamemory 23 (step 3810, event 3910). If the location area is out of thecoverage area, an error message is returned to the client terminal 1A(step 3811, event 3911). If the location area is within the coveragearea, the location requestor 27 forwards the location request message tothe H-GMLC 2B (step 3805), which will then be verified and forwarded tothe V-GMLC 2C (event 3912).

The home GMLC 2B operates according to the flowchart of FIG. 38B and thesequence diagrams of FIGS. 39A, 39B. When a location request message isreceived from the requesting gateway 2A (step 3820) as a result of anyone of events 3904, 3905, 3908 and 3912), the H-GMLC 2B reads thecontents of the received message and supplies the UE's ID to the SNIDrequester 34 and SNID searcher 81 (step 3821).

At step 3822, the SNID searcher 81 determines if the serving node IDcorresponding to the UE ID is stored in the cache memory 80 (event3920). If the decision at step 3822 is affirmative, flow proceeds tostep 3824 and if the decision is negative, flow proceeds from step 3822to step 3823, where the SNID requester 34 is enabled to request theserving node ID from the HLR/HSS 5B (events 3921, 3922).

At step 3824, the received message is checked by the location requester37 to determine if the message contains coverage information (event3923). If the coverage information is not contained in the message, thehome gateway determines that the in/out area decision has been performedby the requesting gateway 2A, and flow proceeds to step 3829 to forwardthe message from the location requestor 37 to the V-GMLC 2C (event3924). If the message contains coverage information, the decision atstep 3824 is affirmative and the coverage information is supplied to thecomparator 36 and flow proceeds to step 3825.

At step 3825, the request type detector 100 determines if the locationrequest is of deferred or immediate type (event 3925). If the locationrequest is of deferred type, flow proceeds to step 3829, where thelocation requester 37 is enabled to forward the location request messageto the V-GMLC 2C (event 3926). If the location request is of theimmediate type, flow proceeds from step 3825 to step 3826 to retrievelocation area information corresponding to the serving node ID from theLA/SNID mapping memory 35 (event 3927) and the comparator 36 performs acomparison (step 3827, event 3928) between the location area informationand the coverage area information which is supplied from the requestinggateway as a result of event 3905. If the location area is out of thecoverage area, an error message is returned to the requesting gateway(step 3828, event 3929). If the location area is within the coveragearea, flow proceeds to step 3829 to forward the location request messageto the V-GMLC 2C (event 3930).

A location measurement is performed on the target UE terminal (event3931) and a location report message is returned to the client terminalthrough the home and requesting gateways (event 3932).

1. A location system for a client terminal which provides alocation-based service by sending a location request message requestinglocation information of a target mobile terminal, comprising a gatewaywhich receives said location request message including service coverageinformation from said client terminal, and returns an error message tosaid client terminal if said gateway finds out that a serving node forsaid target mobile terminal determines from said service coverageinformation that the target mobile terminal is outside of a servicecoverage area of said client terminal; wherein said gateway is arrangedto forward said location request message to a visited gateway which isvisited by said target mobile terminal if said gateway finds out thatsaid serving node determines that said target mobile terminal is insidesaid service coverage, wherein said visited gateway is other than saidgateway.
 2. The location system of claim 1, wherein said gateway isarranged to check the country code of an address of said service node inresponse to said location request message.
 3. The location system ofclaim 1, wherein said service coverage information includes a list ofcountry codes of countries where said client terminal provides saidlocation-based service.
 4. The location system of claim 1, wherein saidserving node is at least one of a mobile service switching center and aserving general packet radio service support node for said target mobileterminal.
 5. The location system of claim 1, further comprising arequesting gateway which is arranged to receive said location requestmessage from said client terminal and forward the received locationrequest message to said gateway, wherein said requesting gateway isother than said gateway.
 6. The location system of claim 5, wherein saidrequesting gateway is arranged to receive said error message from saidgateway and forwards the received error message to said client terminal.7. The location system of claim 1, further comprising a storing meansfor storing an address of said serving node, wherein said target mobileterminal is arranged to send a location registration request to saidserving node which, responsive to said location registration request,sends an address of said serving node to said storing means.
 8. Thelocation system of claim 7, wherein said gateway checks the country codeof an address of said serving node based on the stored address.
 9. Agateway connected to a client terminal which provides a location-basedservice by sending a location request message requesting locationinformation of a target mobile terminal, comprising: receiving means forreceiving said location request message including service coverageinformation from said client terminal; and transmitting means forreturning an error message to said client terminal if said gateway findsout that a serving node for said target mobile terminal determines fromsaid service coverage information that said target mobile terminal isoutside of a service coverage area of said client terminal; wherein saidtransmitting means is arranged to forward said location request messageto a visited gateway which is visited by said target mobile terminal ifsaid gateway finds out that said serving node determines that saidtarget mobile terminal is inside of said service coverage area, whereinsaid visited gateway is other than said gateway.
 10. The gateway ofclaim 9, further comprising checking means for checking, in response tosaid location request message, the country code of an address of saidserving node.
 11. The gateway of claim 9, wherein said service coverageinformation includes a list of country codes of countries where saidclient terminal provides said location-based service.
 12. The gateway ofclaim 9, wherein said serving node is at least one of a mobile serviceswitching center and a serving general packet radio service support nodefor said target mobile terminal.
 13. The gateway of claim 9, whereinsaid receiving means is arranged to receive said location requestmessage from a requesting gateway which receives said location requestmessage from said client terminal, wherein said requesting gateway isother than said gateway.
 14. The gateway of claim 13, wherein saidtransmitting means is arranged to return said error message to saidrequesting gateway which forwards said error message to said clientterminal.
 15. A method of locating a target mobile terminal for a clientterminal which requests for location information of said target mobileterminal to provide a location-based service, comprising the steps of:a) receiving, at a gateway which is connected to said client terminal, alocation request message including service coverage information fromsaid client terminal; and b) returning, from said gateway, an errormessage to said client terminal if said gateway finds out that a servingnode for said target mobile terminal determines from said servicecoverage information that said target mobile terminal is outside of aservice coverage area of said client terminal; wherein step (b)comprises the step of forwarding, in said gateway, said location requestmessage to a visited gateway which is visited by said target mobileterminal if said gateway finds out that said serving node determinesthat said target mobile terminal is inside of said service coveragearea, wherein said visited gateway is other than said gateway.
 16. Themethod of claim 15, further comprising the step of: c) responsive tosaid location request message, checking, in said gateway, the countrycode of an address of said serving node.
 17. The method of claim 15,wherein said service coverage information includes a list of countrycodes of countries where said client terminal provides saidlocation-based service.
 18. The method of claim 15, wherein said servingnode is at least one of a mobile service switching center and a servinggeneral packet radio service support node for said target mobileterminal.
 19. The method of claim 15, wherein step (a) comprises thesteps of: receiving, at a requesting gateway, said location requestmessage from said client terminal; and receiving, at said gateway, saidlocation request message from said requesting gateway, wherein saidrequesting gateway is other than said gateway.
 20. The method of claim19, wherein step (b) comprises the steps of: returning, in said gateway,said error message to said requesting gateway if said gateway finds outthat said serving node locates out of said service coverage; andforwarding, in said requesting gateway, said error message to saidclient terminal.
 21. The method of claim 15, further comprising thesteps of: sending, from said target mobile terminal, a locationregistration request to said serving node; and responsive to saidlocation registration request, sending, from said serving node, anaddress of said serving node to storing means for storing said address.22. The method of claim 21, further comprising the step of checking, insaid gateway, a country code of an address of said serving node based onthe stored address.
 23. A client terminal which requests for locationinformation of a target mobile terminal to provide a location-basedservice, wherein said client terminal sends a location request messageincluding service coverage information to a gateway connected to saidclient terminal, and receives an error message from said gateway if saidgateway finds out that a serving node for said target mobile terminaldetermines from said service coverage information that said targetmobile terminal is outside of a service coverage area of said clientterminal; wherein said client terminal is arranged to send said locationrequest message to a requesting gateway which forwards said locationrequest message to said gateway, wherein said requesting gateway isother than said gateway.
 24. The client terminal of claim 23, whereinsaid client terminal is arranged to send said location request messageto said gateway which, responsive to said location request message,checks the country code of an address of said serving node.
 25. Theclient terminal of claim 23, wherein said client terminal is arranged toreceive a location response from said gateway if said gateway finds outthat said serving node determines that said target mobile terminal isinside of said service coverage area.
 26. The client terminal of claim23, wherein said service coverage information includes a list of countrycodes of countries where said client terminal provides saidlocation-based service.
 27. The client terminal of claim 23, whereinsaid serving node is at least one of a mobile service switching centerand a serving general packet radio service support node for said targetmobile terminal.
 28. The client terminal of claim 23, wherein saidclient terminal is arranged to receive said error message from saidrequesting gateway.
 29. A tangible computer-readable storage mediumstoring thereon a computer program executed by a processor to perform amethod for locating a target mobile terminal requested by a clientterminal, which provides a location-based service, the method comprisingthe steps of: a) receiving, at a gateway which is connected to saidclient terminal, a location request message including service coverageinformation from said client terminal; and b) returning, from saidgateway, an error message to said client terminal if said gateway findsout that a serving node for said target mobile terminal determines fromsaid service coverage information that said target mobile terminal isoutside of a service coverage area of said client terminal; wherein step(b) comprises the step of forwarding, in said gateway, said locationrequest message to a visited gateway which is visited by said targetmobile terminal if said gateway finds out that said serving nodedetermines that said target mobile terminal is inside of said servicecoverage area; wherein said visited gateway is other than said gateway.30. The computer-readable storage medium of claim 29, further comprisingthe step of: c) responsive to said location request message, checking,in said gateway, the country code of an address of said serving node.31. The computer-readable storage medium of claim 29, wherein saidservice coverage information includes a list of country codes ofcountries where said client terminal provides said location-basedservice.
 32. The computer-readable storage medium of claim 29, whereinsaid serving node is at least one of a mobile service switching centerand a serving general packet radio service support node for said targetmobile terminal.
 33. The computer-readable storage medium of claim 29,wherein step (a) comprises the steps of: receiving, at a requestinggateway, said location request message from said client terminal; andreceiving, at said gateway, said location request message from saidrequesting gateway, wherein said requesting gateway is other than saidgateway.
 34. The computer-readable storage medium of claim 33, whereinstep (b) comprises the steps of: returning, in said gateway, said errormessage to said requesting gateway if said gateway finds out that saidserving node locates out of said service coverage; and forwarding, insaid requesting gateway, said error message to said client terminal. 35.The computer-readable storage medium of claim 29, further comprising thesteps of: sending, from said target mobile terminal, a locationregistration request to said serving node; and responsive to saidlocation registration request, sending, from said serving node, anaddress of said serving node to storing means for storing said address.36. The computer-readable storage medium of claim 35, further comprisingthe step of checking, in said gateway, a country code of an address ofsaid serving node based on the stored address.
 37. A location system fora client terminal which requests for location information of a targetmobile terminal to provide a location-based service, comprising agateway which receives a location request message including servicecoverage information from said client terminal, and returns an errormessage to said client terminal if said gateway finds out that a servingnode for said target mobile terminal locates out of said servicecoverage; wherein said gateway forwards said location request message toa visited gateway which is visited by said target mobile terminal ifsaid gateway finds out that said serving node locates within saidservice coverage, wherein said visited gateway is other than saidgateway.
 38. The location system of claim 37, wherein said gateway,responsive to said location request message, checks the country code ofan address of said serving node.
 39. The location system of claim 37,wherein said service coverage information includes a list of countrycodes of countries where said client terminal provides saidlocation-based service.
 40. The location system of claim 37, whereinsaid serving node is at least one of a mobile service switching centerand a serving general packet radio service support node for said targetmobile terminal.
 41. The location system of claim 37, further comprisinga requesting gateway which receives said location request message fromsaid client terminal and forwards the received location request messageto said gateway, wherein said requesting gateway is other than saidgateway.
 42. The location system of claim 41, wherein said requestinggateway receives said error message from said gateway and forwards thereceived error message to said client terminal.
 43. The location systemof claim 37, further comprising a storing means for storing an addressof said serving node, wherein said target mobile terminal sends alocation registration request to said serving node which, responsive tosaid location registration request, sends an address of said servingnode to said storing means.
 44. The location system of claim 43, whereinsaid gateway checks the country code of an address of said serving nodebased on the stored address.
 45. A gateway connected to a clientterminal which requests for location information of a target mobileterminal to provide a location-based service, comprising: receivingmeans for receiving a location request message including servicecoverage information from said client terminal; and transmitting meansfor returning an error message to said client terminal if said gatewayfinds out that a serving node for said target mobile terminal locatesout of said service coverage; wherein said transmitting means forwardssaid location request message to a visited gateway which is visited bysaid target mobile terminal if said gateway finds out that said servingnode locates within said service coverage, wherein said visited gatewayis other than said gateway.
 46. The gateway of claim 45, furthercomprising checking means for checking, in response to said locationrequest message, the country code of an address of said serving node.47. The gateway of claim 45, wherein said service coverage informationincludes a list of country codes of countries where said client terminalprovides said location-based service.
 48. The gateway of claim 45,wherein said serving node is at least one of a mobile service switchingcenter and a serving general packet radio service support node for saidtarget mobile terminal.
 49. The gateway of claim 45, wherein saidreceiving means receives said location request message from a requestinggateway which receives said location request message from said clientterminal, wherein said requesting gateway is other than said gateway.50. The gateway of claim 49, wherein said transmitting means returnssaid error message to said requesting gateway which forwards said errormessage to said client terminal.
 51. A method of locating a targetmobile terminal for a client terminal which requests for the locationinformation of said target mobile terminal to provide a location-basedservice, comprising the steps of: a) receiving, at a gateway which isconnected to said client terminal, a location request message includingservice coverage information from said client terminal; and b)returning, from said gateway, an error message to said client terminalif said gateway finds out that a serving node for said target mobileterminal locates out of said service coverage; wherein step (b)comprises the step of forwarding, in said gateway, said location requestmessage to a visited gateway which is visited by said target mobileterminal if said gateway finds out that said serving node locates withinsaid service coverage, wherein said visited gateway is other than saidgateway.
 52. The method of claim 51, further comprising the step of: c)responsive to said location request message, checking, in said gateway,the country code of an address of said serving node.
 53. The method ofclaim 51, wherein said service coverage information includes a list ofcountry codes of countries where said client terminal provides saidlocation-based service.
 54. The method of claim 51, wherein said servingnode is at least one of a mobile service switching center and a servinggeneral packet radio service support node for said target mobileterminal.
 55. The method of claim 51, wherein the step (a) comprises thesteps of: receiving, at a requesting gateway, said location requestmessage from said client terminal; and receiving, at said gateway, saidlocation request message from said requesting gateway, wherein saidrequesting gateway is other than said gateway.
 56. The method of claim55, wherein step (b) comprises the steps of: returning, in said gateway,said error message to said requesting gateway if said gateway finds outthat said serving node locates out of said service coverage; andforwarding, in said requesting gateway, said error message to saidclient terminal.
 57. The method of claim 51, further comprising thesteps of: sending, from said target mobile terminal, a locationregistration request to said serving node; and responsive to saidlocation registration request, sending, from said serving node, anaddress of said serving node to storing means for storing said address.58. The method of claim 57, further comprising the step of checking, insaid gateway, a country code of an address of said serving node based onthe stored address.
 59. A client terminal which requests for locationinformation of a target mobile terminal to provide a location-basedservice, wherein said client terminal sends a location request messageincluding service coverage information to a gateway connected to saidclient terminal, and receives an error message from said gateway if saidgateway finds out that a serving node for said target mobile terminallocates out of said service coverage; wherein said gateway forwards saidlocation request message to a visited gateway which is visited by saidtarget mobile terminal if said gateway finds out that said serving nodelocates within said service coverage, wherein said visited gateway isother than said gateway.
 60. The client terminal of claim 59, whereinsaid client terminal sends said location request message to said gatewaywhich, responsive to said location request message, checks the countrycode of an address of said serving node.
 61. The client terminal ofclaim 59, wherein said client terminal receives a location response fromsaid gateway if said gateway finds out that said serving node locateswithin said service coverage.
 62. The client terminal of claim 59,wherein said service coverage information includes a list of countrycodes of countries where said client terminal provides saidlocation-based service.
 63. The client terminal of claim 59, whereinsaid serving node is at least one of a mobile service switching centerand a serving general packet radio service support node for said targetmobile terminal.
 64. The client terminal of claim 59, wherein saidclient terminal sends said location request message to a requestinggateway which forwards said location request message to said gateway,wherein said requesting gateway is other than said gateway.
 65. Theclient terminal of claim 64, wherein said client terminal receives saiderror message from said requesting gateway.